Electronic document editors are widely used in homes and businesses today. Familiar examples of these editors include word processing applications that operate on personal computers (PCs) and note-taking applications that operate on personal data assistants (PDAs). One goal for these applications is to replace paper as the simplest means to record and communicate information. However, to replace and enhance paper's utility, the electronic document editor should allow the user to place document objects on a page and to edit, move, resize, and add text and other content, while ensuring that the user can efficiently review the page, clearly scan the individual objects, and readily read the content of each object. Also, unlike typical word processors, a free-form document editor that allows a user to quickly absorb content from multiple objects more closely models paper's utility.
One function that a free-form electronic document editor should have to enhance its utility is the capability to align document objects relative to one another to present a user with an organized view of textual and graphic content. When content on a page is organized and aligned, a user can quickly scan the page to identify information of interest.
A typical word processor presents text in an organized, one-dimensional format. Text is usually entered onto a page beginning at the top left-hand corner and moving in a line, more or less continuously, to the lower right-hand corner of the page. Although this format promotes legibility, it imposes a rigid structure upon the user. Many users find this structural imposition more limiting, and thus less desirable, than traditional pen and paper.
In contrast, a free-form document editor supports document objects, islands of content that can be added anywhere on the two dimensional surface of the page. A document object contains textual and/or graphic content that is grouped together. This content may include text entered by a keyboard or similar device, handwriting entered with a stylus or similar device, a drawing, or a combination of these items. However, if an electronic document contains multiple islands of content and the content of each island is misaligned, then readability can suffer. Consequently, islands of content in an electronic document need to be aligned relative to one another to facilitate a user readily scanning the page to identify information contained therein.
Some word processing programs allow users to place text boxes on a page. A text box is a type of document object that contains textual content presented in the format of a rectangular box or other geometric shape. An electronic document may display textual content inside a rectangular frame so that the text box serves as a content container. However, conventional word processing programs do not generally support automatically arranging these boxes or their content relative to one another so that the content of multiple boxes is uniformly aligned.
A user typically creates a new text box by positioning a pointer, such as a cursor or stylus, at a desired position on the electronic page and entering an insertion point (“IP”). The location of the IP defines the starting point of the content that the user enters. If the user precisely positions the IP, the content of the new text box may be aligned with the content of an existing text box. More commonly, the content in multiple text boxes is not precisely aligned since such manual alignment is tedious. Furthermore, conventional word processing programs generally lack a provision to automatically align a new IP with an existing text box. An electronic page that displays text boxes with misaligned content does not generally promote readership.
One of the advantages of traditional pen and paper is the ease with which information can be rearranged and presented. A user can jot down islands of content at convenient locations on the top sheet of a pad of paper whenever the need arises to record information. The user can then tear off the top sheet and manually transfer the content to a new sheet at a convenient time. The user can arrange the islands during the transfer process so that the content of each island is presented in relative alignment. Users sometimes arrange the overall layout of a page to emphasize specific content, for example placing a dominant island of content in the upper left corner of the page. In a presentation format that features aligned content, the user can quickly scan the sheet to reference information. However, many users find manually transferring information between sheets undesirable. Many users also find manually reorganizing information in electronic documents, which typically offer limited screen space for clearly displaying information, cumbersome. Furthermore, conventional electronic document editors generally lack capabilities to automatically arrange the content of multiple test islands.
What is needed is a capability for automatically positioning one or more document objects in an electronic document so the contents of multiple objects are aligned relative to one another. This capability should also include automatically aligning an IP relative to the content of an existing document object. Such a capability would combine the flexibility of pen and paper with the readability of word processing documents.